iT邦幫忙

2023 iThome 鐵人賽

DAY 29
0
自我挑戰組

一個營建系學生的韌體之路-自走車篇系列 第 29

【AMR_Day29】直線的偵測

  • 分享至 

  • xImage
  •  

前情提要

車道辨識流程
圖片來源:辨識出公路上的道路標線

昨天講到了利用影像做車道辨識的流程,其中一個環節是從邊緣找出一條線性的方程式。

最常看到的找線性方程式的方法是最小二乘法、RANSAC、霍夫轉換,今天就把三者做個比較,因為我自己有實際拿同樣的數據跑過這三者的結果。目前還沒有時間做表格化整理,未來有機會的話再補上,目前就先以文字敘述。
先簡述三者:

最小二乘法

又稱最小平方法(least squares method),目標是在一群點之中,找出一條直線,這一條直線與每點的直線距離平方和可以是最小的。除了找直線也可以找曲線、圓形等等。
https://ithelp.ithome.com.tw/upload/images/20231014/20140433mhPWgocXr4.png

RANSAC

隨機抽樣一致算法(RANdom SAmple Consensus、RANSAC),以迭代的方式隨機抽取部份的點作目標模型(線)匹配的測試,如果符合誤差內的話就被歸類為「內群點」(inlier),反之為「離群點」(outlier)。
圖片中的紅點是RANSAC完後它判斷為「離群點」、藍點是為「內群點」。
https://ithelp.ithome.com.tw/upload/images/20231014/20140433WHXA2tqu1c.png
這個模型可以是任何形狀或圖片等等,可作為特徵提取的演算法。

霍夫轉換

Hough transform,也是一種特徵提取的技術,採在參數空間中執行投票來決定物體的形狀,常見用於找直線或圓,原理是每條線都會有一個公式表達
斜截式 斜截式
法線式 法線式
霍夫轉換
那一個點能被很多條線通過,我們把所有通過某點的線之參數(參數空間)mborrt記錄下來,經過最多點的線之組參數空間,就是我們要的方程式。
霍夫轉換
通常會用rt是因為斜率的表示會有線為垂直時斜率無限大的情況發生。
除了線和圓,也可以找平面~我做過!!!

結論

這幾個方法都可以找出車道標線,不過最小二乘法不考慮「離群點(雜點)」的情況,誤差會比較大。RANSAC是改善了最小二乘法,如果給的模型夠精準,可以找出我們想要的那『一條線』。霍夫轉換的話可以一次找出『多條線』符合的線,但要注意在線有固定數量的情況下,要小心局部最大值的部份。


上一篇
【AMR_Day28】車道偵測概述
下一篇
【AMR_Day30】模擬成果展示
系列文
一個營建系學生的韌體之路-自走車篇30
圖片
  直播研討會
圖片
{{ item.channelVendor }} {{ item.webinarstarted }} |
{{ formatDate(item.duration) }}
直播中

尚未有邦友留言

立即登入留言